import React, { Component } from 'react'
import './Footer.css'
export default class Footer extends Component {
  // 全选按钮change事件的事件处理函数
  updateAllHandle = (e) => {
    // 将要把所有数据isDone修改的目标值传递给App
    this.props.updateTodos(e.target.checked)
  }
  render() {
    // 计算数据总数和完成数据总数
    const allTotal = this.props.todos.length
    const doneTotal = this.props.todos.filter((item) => item.isDone).length
    return (
      <div className="todo-footer">
        <label>
          <input
            type="checkbox"
            checked={doneTotal === allTotal}
            onChange={this.updateAllHandle}
          />
        </label>
        <span>
          <span>已完成 {doneTotal}</span> / 全部 {allTotal}
        </span>
        <button
          className="btn btn-danger"
          // 由于这次不需要给App传递任何数据,所以无需手动调用.直接将app的函数,当做清除已完成任务按钮的事件处理函数.只要点击了这个按钮,对应的函数执行即可
          onClick={this.props.clearAllDoneTodos}
        >
          清除已完成任务
        </button>
      </div>
    )
  }
}
